package com.ihr360.payperiod;

import java.util.Date;

public class PayPeriodTerm {
    private Long id;
    private Date startOn;

    /**
     * 计算结束日期
     */

    private Date endOn;

    private int year;
    private int month;

    /**
     * 是否合并计税
     */
    private boolean mergeTaxTerm;
    /**
     * 合并计税依赖的前置数据表id
     */
    private Long basedOnTermId;

    private String planName;

    private String basedOnPlanName;


    /**
     * MergeSalaryReport
     */
    private Long mergeSalaryReportId;

    /**
     * MergeSalaryReport
     */
    private Long mergeSalaryReportTermSalaryId;

    public PayPeriodTerm() {
    }

    public PayPeriodTerm(Long id, Date startOn, Date endOn, int year, int month,
                         boolean mergeTaxTerm, Long basedOnTermId,String planName,String basedOnPlanName,
                         Long mergeSalaryReportId, Long mergeSalaryReportTermSalaryId) {
        this.id = id;
        this.startOn = startOn;
        this.endOn = endOn;
        this.year = year;
        this.month = month;
        this.mergeTaxTerm = mergeTaxTerm;
        this.planName = planName;
        this.basedOnTermId = basedOnTermId;
        this.basedOnPlanName = basedOnPlanName;
        this.mergeSalaryReportId = mergeSalaryReportId;
        this.mergeSalaryReportTermSalaryId = mergeSalaryReportTermSalaryId;
    }

    public Date getStartOn() {
        return startOn;
    }

    public Date getEndOn() {
        return endOn;
    }

    public int getYear() {
        return year;
    }

    public int getMonth() {
        return month;
    }

    public Long getId() {
        return id;
    }

    public boolean isMergeTaxTerm() {
        return basedOnTermId != null;
    }

    public Long getBasedOnTermId() {
        return basedOnTermId;
    }

    public String getBasedOnPlanName() {
        return basedOnPlanName;
    }

    public Long getMergeSalaryReportTermSalaryId() {
        return mergeSalaryReportTermSalaryId;
    }

    public Long getMergeSalaryReportId() {
        return mergeSalaryReportId;
    }

    public void setMergeSalaryReportId(Long mergeSalaryReportId) {
        this.mergeSalaryReportId = mergeSalaryReportId;
    }

    public void setMergeSalaryReportTermSalaryId(Long mergeSalaryReportTermSalaryId) {
        this.mergeSalaryReportTermSalaryId = mergeSalaryReportTermSalaryId;
    }

    public String getPlanName() {
        return planName;
    }
}